package main

import (
	"fmt"
	"io"
	"os"
)

func main() {
	args := os.Args
	fmt.Println("输入参数为", args)

	if len(args) != 3 {
		fmt.Println("args is error")
		return
	}

	srcFile := args[1]
	dstFile := args[2]

	if srcFile == dstFile {
		fmt.Println("源文件和目标文件不能同名")
	}

	file, _ := os.Open(srcFile)

	create, _ := os.Create(dstFile)

	defer func() {
		file.Close()
		create.Close()
	}()

	buf := make([]byte, 1024)
	for {
		n, err := file.Read(buf)
		if err != nil {
			if nil == io.EOF {
				break
			} else {
				fmt.Println("读文件出错 err：", err)
				return
			}
		}
		create.Write(buf[:n])
	}
}
